home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / CUGUK / C005.ZIP / MATH.H < prev    next >
Text File  |  1990-01-19  |  2KB  |  56 lines

  1.  
  2. /*
  3.  *    S T A N D A R D   H E A D E R    F I L E
  4.  *
  5.  *        M A T H   P A C K A G E
  6.  *
  7.  *        Max R. Dursteler, Rockville Md.
  8.  */
  9.  
  10.     /* Functions */
  11.  
  12. extern double fabs(), floor(), ceil(), fmod();
  13. extern double sqrt(), exp(), exp2(), log(), log10(), pow(), pw10();
  14.  
  15. extern double sin(), cos(), tan(), asin(), acos(), atan();
  16.  
  17. struct complex {     /* structure for complex numbers */
  18.     double rl;
  19.     double im;
  20. };
  21.     /* Usefull constants */
  22.  
  23. #define BLKSIZE 512
  24. #define MAXINT    32767
  25. #define BIG    72057594037927936.        /* Maximum precision of DOUBLE */
  26. #define HUGE    1.701411733192644270e38     /* Largest DOUBLE */
  27. #define LOGHUGE 39                /* 10^39 --> Largest power */
  28. #define LN2    0.69314718055994530941
  29. #define LN10    2.30258509299404568401
  30. #define E    2.7182818284590452353602874
  31. #define SQRT2    1.41421356237309504880
  32. #define HALFSQRT2    .70710678118654752440
  33. #define PI    3.141592653589793238462643
  34. #define QUARTPI 0.78539816339744830962
  35. #define HALFPI    1.57079632679489661923
  36. #define TWOPI    6.28318530717958647692
  37. #define RADPDEG 0.01745329251994329576
  38.  
  39.         /* macros */
  40.  
  41. #define sqr(x)    ((x) * (x))
  42. #define sgn(x)    ((x) < 0 ? -1 : 1)
  43. #define xswap(a,b) a ^= b, b ^= a, a ^= b
  44. #define swap(a,b,c) c = a, a = b, b = c
  45. #define max(x,y)    ((x) >= (y) ? (x) : (y))
  46. #define min(x,y)    ((x) <= (y) ? (x) : (y))
  47. #define abs(x)        ((x)<0? -(x):(x))    /* Integer Absolute value */
  48. #define fabs(x)     ((x)<0.? -(x):(x))    /* Floating absolute value */
  49. #define mod(x,y)    ((x)%(y))        /* Integer modulo */
  50. #define logE(x)     (log(x))        /* Natural log */
  51. #define ln(x)        (log(x))        /* Natural log */
  52. #define cos(x)        (sin(x+HALFPI))     /* Cosinus [radians] */
  53. #define tan(x)        (sin(x)/cos(x))     /* Tangens [radians] */
  54.  
  55. /* End of math.h */
  56.